<template>
  <div>
    我是子组件
  </div>
  <div>
    数组：{{ arr }}
  </div>
  <button @click="send">给父组件传值</button>
</template>
<script setup lang="ts">
// ts 特有设置默认值withDefaults
// const prop=withDefaults(defineProps<{
//   content:String,
//   arr:number[]
// }>(),{
//   arr:()=>[111] // 复杂类型要用函数形式
// })

// ts 泛型形式
// const prop=defineProps<{
//   content:String,
//   arr:number[]
// }>()


// js方式
// const prop= defineProps({
//   content:String,
//   arr:{
//     type:Array,
//     default:[1,23]
//   }
// })
// console.log(prop.content)

// -----------emit传值--------------------
// js 写法 
// const emit=defineEmits(['sends'])
// ts写法
// const emit=defineEmits<{
//   (e:'sends',name:number[]):void,
// }>()
// const send=()=>{
//   emit("sends",prop.arr)
// }
// 子组件像父组件暴露属性和方法
// defineExpose({
//  name:'zs',
//  open:()=>{console.log('我是暴露的值')}

// })


defineExpose({
  arr:'zs',
  open:()=>{}
})
</script>